www.gusucode.com > 星梦奇缘交友网 1 > 星梦奇缘交友网 1.0源码程序/love/leaveword/admin_stats.asp

    <!-- #include file="config.asp" -->
<!-- #include file="style.asp" -->
<!-- #include file="admin_verify.asp" -->

<%Response.Expires=-1%>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title><%=HomeName%> 留言本 留言本参数</title></head><body<%=bodylimit%> onload="<%=framecheck%>">


<div align="<%=TableAlign%>">
<table border="<%=TableBorderWidth%>" cellpadding="2" style="border-collapse:collapse" width="<%=TableWidth%>" bordercolor="<%=TableBorderColor%>"><tr><td>


<!-- #include file="admintitle.inc" -->

<!-- #include file="admintool.inc" -->
<%
set cn=server.CreateObject("ADODB.Connection")
set rs=server.CreateObject("ADODB.Recordset")

CreateConn cn,dbtype
rs.open "SELECT startdate FROM stats",cn,0,3,1
if rs.EOF then
	cn.Execute "INSERT INTO stats(startdate) VALUES(#" &now()& "#)",,1
else
	if isdate(rs(0))=false then
		rs(0)=now()
		rs.Update
	end if
end if
rs.Close

rs.Open "SELECT TOP 1 * FROM stats",cn,,,1

tstartdate=rs("startdate")
tview=rs("view")
tsearch=rs("search")
tleaveword=rs("leaveword")
twritten=rs("written")
tfiltered=rs("filtered")
tbanned=rs("banned")
tlogin=rs("login")
tloginfailed=rs("loginfailed")
tnow=now()

rs.Close

on error resume next
%>

<br>
<table border="1" cellpadding="2" style="border-collapse:collapse" width="100%" bordercolor="<%=TableBorderColor%>">
	<tr height="25" align="center">
		<td background="<%=TableTitlePic%>" bgcolor="<%=TableTitleBGC%>"><font color="<%=TableTitleColor%>"><b>访问统计</b></font></td>
	</tr>
	<tr><td bgcolor="<%=TableContentBGC%>" align="left"><font color="<%=TableContentColor%>">
		<br>

		<p><b>开始统计日期</b></p>
		<blockquote>
			<p><b><%=Year(tstartdate) & "-" & Month(tstartdate) & "-" & Day(tstartdate)%></b></p>
		</blockquote>

		<p><b>留言页面</b></p>
		<blockquote>
			<table style="border-width:0px; width:100%;">
				<tr><td style="width:120px;">访问次数:</td><td><%=tview%></td></tr>
				<tr><td style="width:120px;">平均月访问次数:</td><td><%=formatnumber(tview/((datediff("m",tstartdate,tnow)+1)),2,true,false,false)%></td></tr>
				<tr><td style="width:120px;">平均周访问次数:</td><td><%=formatnumber(tview/((datediff("ww",tstartdate,tnow)+1)),2,true,false,false)%></td></tr>
				<tr><td style="width:120px;">平均日访问次数:</td><td><%=formatnumber(tview/((datediff("d",tstartdate,tnow)+1)),2,true,false,false)%></td></tr>
			</table>
		</blockquote>

		<p><b>搜索页面</b></p>
		<blockquote>
			<table style="border-width:0px; width:100%;">
				<tr><td style="width:120px;">搜索次数:</td><td><%=tsearch%></td></tr>
				<tr><td style="width:120px;">平均月搜索次数:</td><td><%=formatnumber(tsearch/((datediff("m",tstartdate,tnow)+1)),2,true,false,false)%></td></tr>
				<tr><td style="width:120px;">平均周搜索次数:</td><td><%=formatnumber(tsearch/((datediff("ww",tstartdate,tnow)+1)),2,true,false,false)%></td></tr>
				<tr><td style="width:120px;">平均日搜索次数:</td><td><%=formatnumber(tsearch/((datediff("d",tstartdate,tnow)+1)),2,true,false,false)%></td></tr>
			</table>
		</blockquote>

		<p><b>“签写留言”页面</b></p>
		<blockquote>
			<table style="border-width:0px; width:100%;">
				<tr><td style="width:120px;">访问次数:</td><td><%=tleaveword%></td></tr>
				<tr><td style="width:120px;">成功留言次数:</td><td><%=twritten%></td></tr>
				<tr><td style="width:120px;">放弃留言率:</td><td><%if tleaveword=0 then Response.Write "/" else Response.Write formatpercent((tleaveword-twritten)/tleaveword,2,true)%></td></tr>
				<tr><td style="width:120px;">留言被过滤次数:</td><td><%=tfiltered%></td></tr>
				<tr><td style="width:120px;">过滤率:</td><td><%if twritten+tfiltered+tbanned=0 then Response.Write "/" else Response.Write formatpercent(tfiltered/(twritten+tfiltered+tbanned),2,true)%></td></tr>
				<tr><td style="width:120px;">留言被拒绝次数:</td><td><%=tbanned%></td></tr>
				<tr><td style="width:120px;">拒绝率:</td><td><%if twritten+tfiltered+tbanned=0 then Response.Write "/" else Response.Write formatpercent(tbanned/(twritten+tfiltered+tbanned),2,true)%></td></tr>
			</table>
		</blockquote>

		<p><b>“管理员登录”页面</b></p>
		<blockquote>
			<table style="border-width:0px; width:100%;">
				<tr><td style="width:120px;">登录次数:</td><td><%=tlogin%></td></tr>
				<tr><td style="width:120px;">登录失败次数:</td><td><%=tloginfailed%></td></tr>
				<tr><td style="width:120px;">登录失败率:</td><td><%if tlogin=0 then Response.Write "/" else Response.Write formatpercent(tloginfailed/tlogin,2,true)%></td></tr>
			</table>
		</blockquote>
<%
on error goto 0

rs.Open "SELECT Count(*) FROM stats_clientinfo",cn,,,1
if rs.EOF=false then tclientcount=rs.Fields(0) else tclientcount=0

if tclientcount>0 then
	'客户端操作系统
	rs.Close
	rs.Open "SELECT TOP 10 * FROM(SELECT os,Count(os) FROM stats_clientinfo GROUP BY os ORDER BY Count(os) DESC)",cn,,,1
	
	Response.Write "<p><b>客户端操作系统</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:120px;"">"
		Response.Write server.HTMLEncode(rs.Fields("os")) & ":"
		Response.Write "</td><td>"
		Response.Write rs.Fields(1) & "(" & formatpercent(rs.Fields(1)/tclientcount,2,true) & ")"
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"
	
	'客户端浏览器
	rs.Close
	rs.Open "SELECT TOP 10 * FROM (SELECT browser,Count(browser) FROM stats_clientinfo GROUP BY browser ORDER BY Count(browser) DESC)",cn,,,1
	
	Response.Write "<p><b>客户端浏览器</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:120px;"">"
		Response.Write server.HTMLEncode(rs.Fields("browser")) & ":"
		Response.Write "</td><td>"
		Response.Write rs.Fields(1) & "(" & formatpercent(rs.Fields(1)/tclientcount,2,true) & ")"
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"

	'客户端屏幕分辨率
	rs.Close
	rs.Open "SELECT TOP 10 * FROM (SELECT screenwh,Count(screenwh) FROM (SELECT screenwidth &'*'& screenheight AS screenwh FROM stats_clientinfo) GROUP BY screenwh ORDER BY Count(screenwh) DESC)",cn,,,1
	
	Response.Write "<p><b>客户端屏幕分辨率</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:120px;"">"
		if rs.Fields("screenwh")<>"0*0" then
			Response.Write server.HTMLEncode(rs.Fields("screenwh")) & ":"
		else
			Response.Write "未知:"
		end if
		Response.Write "</td><td>"
		Response.Write rs.Fields(1) & "(" & formatpercent(rs.Fields(1)/tclientcount,2,true) & ")"
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"

	'访问时段
	rs.Close
	rs.Open "SELECT hsect,Count(hsect) FROM (SELECT Hour(timesect) AS hsect FROM stats_clientinfo) GROUP BY hsect ORDER BY hsect ASC",cn,,,1
	
	Response.Write "<p><b>访问时段</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:120px;"">"
		Response.Write server.HTMLEncode(rs.Fields(0) & ":00~" & rs.Fields(0) & ":59") & ":"
		Response.Write "</td><td>"
		Response.Write rs.Fields(1) & "(" & formatpercent(rs.Fields(1)/tclientcount,2,true) & ")"
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"

	'访问周期
	dim weeklist
	weeklist=array("星期日","星期一","星期二","星期三","星期四","星期五","星期六")
	
	rs.Close
	rs.Open "SELECT weekno,Count(weekno) FROM (SELECT Weekday(timesect,1) AS weekno FROM stats_clientinfo) GROUP BY weekno ORDER BY weekno ASC",cn,,,1
	
	Response.Write "<p><b>访问周期</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:120px;"">"
		'Response.Write server.HTMLEncode(weekdayname(rs.Fields(0),false,1))
		Response.Write server.HTMLEncode(weeklist(rs.Fields(0)-1)) & ":"
		Response.Write "</td><td>"
		Response.Write rs.Fields(1) & "(" & formatpercent(rs.Fields(1)/tclientcount,2,true) & ")"
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"

	'最近30天访问量
	rs.Close
	rs.Open "SELECT TOP 30 * FROM (SELECT datesect,Count(datesect) FROM (SELECT Year(timesect) & '-' & Month(timesect) & '-' & Day(timesect) AS datesect FROM stats_clientinfo) GROUP BY datesect ORDER BY CDate(datesect) ASC)",cn,,,1
	
	Response.Write "<p><b>最近30天访问量</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:120px;"">"
		Response.Write server.HTMLEncode(rs.Fields("datesect")) & ":"
		Response.Write "</td><td>"
		Response.Write rs.Fields(1)
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"

	'访问来源
	rs.Close
	rs.Open "SELECT TOP 10 * FROM (SELECT sourceaddr,Count(sourceaddr) FROM stats_clientinfo GROUP BY sourceaddr ORDER BY Count(sourceaddr) DESC)",cn,,,1
	
	Response.Write "<p><b>访问来源</b></p>"
	Response.Write "<blockquote><table style=""border-width:0px; width:100%;"">"
	while rs.EOF=false
		Response.Write "<tr><td style=""width:150px;"">"
		Response.Write server.HTMLEncode(rs.Fields("sourceaddr")) & ":"
		Response.Write "</td><td>"
		Response.Write rs.Fields(1) & "(" & formatpercent(rs.Fields(1)/tclientcount,2,true) & ")"
		Response.Write "</td></tr>"
		rs.MoveNext
	wend
	Response.Write "</table></blockquote>"

end if


rs.Close
cn.Close
set rs=nothing
set cn=nothing
%>
		<br>
		<form method="post" action="admin_clearstats.asp" onsubmit="if (confirm('确实要将统计清零吗?')){submit1.disabled=true;return true;} else return false;">
		<p align="center"><input type="submit" value="统计清零" name="submit1"></p>
		</form>

	</font></td></tr>
</table>

</td></tr></table></div>

<!-- #include file="bottom.asp" -->
</body></html>